package com.yanfan.energy.mapper;

import com.yanfan.energy.domain.*;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;

@Repository
public interface ConsumptionDao {

    List<EquipmentConsumptionDto> selectequipmentEnergy(EquipmentEnergyParam equipmentEnergyParam);

    List<EquipmentConsumptionDto> workshopEnergy(EquipmentEnergyParam equipmentEnergyParam);

    /**
     * 楼栋 相关接口
     *
     * @param equipmentEnergyParam
     * @return
     */
    List<EquipmentConsumptionDto> buildingEnergy(EquipmentEnergyParam equipmentEnergyParam);

    List<EquipmentConsumptionDto> selectequipmentEnergyChart(EquipmentEnergyParam equipmentEnergyParam);

    EnergyConsumption energyConsumption();

    List<PurchasingBody> energyPriceMapCaChe(@Param("type") Integer type, @Param("begin") Date begin, @Param("end") Date end);

    EnergyConsumption energyConsumptionIsNotAdmin(@Param("userId") Long userId, @Param("ancestor") String ancestor);

    List<EquipmentConsumptionDto> selectequipmentEnergyChartByType(EquipmentEnergyParam equipmentEnergyParam);

    List<OperationCase> devOpsList(DeviceChartRequest consumptionProportionRequest);

    List<OperationCase> energyConsumptionList(DeviceChartRequest consumptionProportionRequest);

    List<OperationCase> devOpsList2(DeviceChartRequest consumptionProportionReq);

    List<OperationCase> energyConsumptionList2(DeviceChartRequest consumptionProportionReq);

    List<EquipmentEnergyBaseParam> baseYear(@Param("lastYearStartDate") Date lastYearStartDate, @Param("currentYearEndDate") Date currentYearEndDate, @Param("deviceId") Long deviceId, @Param("type") Integer type);




/*    List<EquipmentConsumptionDto> workshopEnergyChart(EquipmentEnergyParam equipmentEnergyParam);

    List<EquipmentConsumptionDto> buildingEnergyChart(EquipmentEnergyParam equipmentEnergyParam);*/
}
